The present invention pertains to parallel communications cables for digital data transmission; such cables, for example, may be used to transmit data between personal computers and printers.
By way of background, parallel communications ports usually comprise as output lines: eight DATA lines, a STROBE line, an INITIALIZE printer line, an automatic LINEFEED line, and a SELECT line; and comprise as input lines: an ACKNOWLEDGE line, a BUSY line, a PAPER OUT line, an ERROR line, and another SELECT line. In standard use, the sending device (typically a computer) places data on the eight DATA lines and waits a short period of time for the DATA lines' logic states, that is, their voltage levels, to settle to their proper values. The sending device then pulses the STROBE line from its usual "high" state to an "active-low" state for a brief period of time, thereby commanding the receiving device (typically a printer) to receive the data present on the DATA lines.
In response to the STROBE pulse, the receiving device sets the BUSY line to a high state, commanding the sending device to wait before changing the DATA lines' states. When the receiving device has received the data, it returns the BUSY line to its normal low state. The sending device may then send more data to the eight DATA lines, repeating the process.
The other output and input lines mentioned above may, or may not, be supported by either the sending device or the receiving device.
Various factors limit a parallel cable's length for reliably linking parallel communication ports. The predominant problem is crosstalk between the DATA lines and into the STROBE line. When crosstalk between the DATA lines and the STROBE line causes the STROBE line to be within the active-low range before the sending device activates the STROBE line, the receiving device will attempt to receive the data before the DATA lines have settled into their proper voltage levels, potentially causing communication errors.
In addition, crosstalk between the DATA lines may prevent some DATA lines from reaching their proper voltage levels before the STROBE line is activated, also causing communication errors. In the worst case, all but one of the DATA lines would simultaneously move from one logic state to the other. The coupling into the remaining DATA line could override its proper state. This crosstalk problem is compounded by a lack of uniformity in STROBE signal timing among different devices.
In general, signal quality degrades as a function of the cable's length. Parallel cables typically are limited in length to approximately 10 to 25 feet; longer lengths have associated signal degradation which prevents reliable communication. Serial cables can operate reliably over much greater lengths. Thus, some earlier extended-length parallel cables are actually serial cables. The parallel signals are converted to a serial stream of data which is transmitted over the extended distance. At the cable's far end, the serial data stream is converted back to parallel signals. This technique of extending the transmission of parallel data has the speed limitations inherent with serial data communication, typically decreasing the transmission speed to approximately one-fifth the speed of parallel transmission.
What is needed, then is an improved parallel communications cable for transmitting data over extended distances while still maintaining signal quality, communications reliability, and parallel data transmission's inherent efficiency and speed advantages over serial data transmission.